package com.lhz.project.wage.service;


import com.lhz.project.wage.model.entity.WageBase;
import com.lhz.project.wage.model.entity.WageWeal;
import com.lhz.project.wage.model.excel.WageBaseData;
import com.lhz.project.wage.model.excel.WageWealData;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author LiHuaZhi
 * @since 2020-07-04 13:05:57
 */
public interface WageService {

    //导出基础模板
    void downloadBaseExcel(HttpServletRequest request, HttpServletResponse response);

    List<WageBase> listWageBase();

    List<WageWeal> listWageWeal();

    /**
     * 上传excel
     *
     * @param file
     * @throws Exception
     */
    void uploadBaseExcel(MultipartFile file) throws Exception;

    //对导入数据进行业务判断
    void checkBaseExcel(WageBaseData base, Integer rowIndex);

    /**
     * 报错基础工资数据
     *
     * @param baseDataList
     */
    void saveBaseExcel(List<WageBaseData> baseDataList);

    /**
     * 上传excel
     *
     * @param file
     * @throws Exception
     */
    void uploadWealExcel(MultipartFile file) throws Exception;


    //对导入数据进行业务判断
    void checkWealExcel(WageWealData wageWeal, Integer rowIndex);

    /**
     * 报错福利工资数据
     *
     * @param wealDataList
     */
    void saveWealExcel(List<WageWealData> wealDataList);

    /**
     * 导出工资表
     */
    void outWageExcel(HttpServletResponse response);
}